import { defineStore } from 'pinia'
import { ref } from 'vue'
import { getLoginUserInfoUsingGet } from '@/api/userController.ts'

// 定义一个存储用户登录状态的信息
export const useLoginUserStore = defineStore('loginUser', () => {
  // 变量
  const loginUser = ref<any>({
    userName: '未登录'
  })

  // get方法
  async function fetchLoginUser() {

    const res = await getLoginUserInfoUsingGet()
    if (res.data.code === 0 && res.data.data) {
      loginUser.value = res.data.data
    }
  }

  /**
   * set方法
   * 设置登录用户的信息
   * @param newLoginUser
   */
  function setLoginUser(newLoginUser: any) {
    loginUser.value = newLoginUser
  }

  return { loginUser, setLoginUser, fetchLoginUser }
} )

//{ persist: { storage: localStorage } }
